查看原文
其他

CLCNet:用分类置信网络重新思考集成建模(附源代码下载)

Edison_G 计算机视觉研究院 2023-10-04

关注并星标

从此不迷路

计算机视觉研究院


公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式

论文地址:https://arxiv.org/pdf/2205.09612.pdf
链接: https://pan.baidu.com/s/1oUjAOOzP6CEuZYkLqi5Zsg  密码: 4pja

计算机视觉研究院专栏

作者:Edison_G

分类置信网络(CLCNet),可以确定分类模型是否正确分类输入样本。


1

 概括


分类置信网络(CLCNet)可以获取任意维度的向量形式的分类结果,并返回一个置信度分数作为输出,它代表了一个实例被正确分类的概率。
可以在一个由多个SOTA分类模型组成的简单级联结构系统中使用CLCNet,实验表明该系统可以实现以下优势:
  • 系统可以自定义平均计算需求( FLOPs) 推理时的每张图像

  • 在相同的计算要求下,系统的性能可以超过任何与系统中的模型结构相同但大小不同的模型

实际上,这是一种新型的集成建模。与通用集成建模一样,它可以实现比单一分类模型更高的性能,但新的系统比通用集成建模需要更少的计算量。


2

 背景


在深度学习中,分类一直是热门任务。并且已经提出了许多具有相同结构的不同尺寸变体的SOTA分类模型,例如EfficientNet-B0到B7。B后面的数字越大,模型的参数越多,性能越高。基于这个观察,我们想要达到以下目的:

  • 对于具有不同大小变体的分类模型,我们期望提出一种可以组合模型变体的方法,该方法可以在具有相同计算要求(FLOPs)的情况下达到比原始模型更高的准确度

  • 上述方法可以达到一般集成建模的性能,但对计算量的要求较低

为了达到上述目的,在今天分享中,研究者首先提出了一个可以预测分类模型是否正确分类的网络,称为分类置信网络(CLCNet)。

研究者可以将CLCNet应用在一个简单的级联结构系统中,其中研究者堆叠了两个(或多个)分类模型,如上图所示。计算量少的模型称为浅模型,计算量多的模型称为深度模型。当通过这个系统推断一个样本时,它会首先使用浅层模型进行分类,并将其分类结果返回给CLCNet,以预测它是否被正确分类。如果CLCNet输出高置信度分数,将直接接受分类结果,不会执行后续步骤。
另一方面,当CLCNet对浅层模型的分类结果置信度不足时,输入样本会继续由深层模型进行分类,深层模型的分类结果也会由CLCNet评估并输出置信度分数。最后,比较了CLCNet预测的深度模型和浅层模型分类结果的置信度分数,并将置信度较高的分类结果作为输出返回。

3

 新框架


左边是CLCNet,右边就是Restricted Self-Attention

当得到一个分类结果时,我们想知道分类是否正确。我们将分类结果输入到上图左侧所示的CLCNet中,CLCNet会对分类结果进行排序去除其类别信息,这样可以专注于分类结果的数值分布。然后将排序后的结果输入到我们提出的Restricted Self-Attention模块中,其目的是将任意维度的分类结果映射到等效的m维向量,其中m是超参数。换句话说,我们想在m分类任务中“模拟”分类结果的等价分布。当得到等价的m维向量后,我们再次对其进行排序并交给TabNet,TabNet会返回这个映射向量的置信度分数,表示分类正确的概率。

将5维分类结果映射到等效100维向量的示例

TabNet

我们可以在一个简单的级联结构系统中使用CLCNet,其中我们堆叠了两个(或多个)分类模型,如第一张图所示。计算量较少的模型称为浅层模型。系统会先用它进行分类,然后将分类结果输入到CLCNet来预测是否分类正确。如果CLCNet输出的置信度分数高于阈值,那么我们将直接接受分类结果,不会继续下一步,阈值是一个超参数。计算成本较高的模型称为深度模型。当CLCNet对浅层模型分类结果的置信度小于阈值时,输入样本会继续被深层模型分类,分类结果也会输入到CLCNet进行评估,并给出另一个置信度分数。最后,我们比较两个模型分类结果的置信度得分,接受置信度较高的结果。


4

 实验


总结:
在今天分享中,研究者就是提出了一个可以预测任意维度分类结果的置信度分数的CLCNet,并且CLCNet可以用于简单的级联结构系统,能够逼近一般集成建模的性能,而所需的更少 计算比一般集成建模。并且系统中的模型是可更换的,可以更换新的SOTA模型以获得更好的效果。此外,通过调整系统的阈值,可以指定系统推理的平均FLOPs。
© THE END 

转载请联系本公众号获得授权


计算机视觉研究院学习群等你加入!


计算机视觉研究院主要涉及深度学习领域,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。研究院接下来会不断分享最新的论文算法新框架,我们这次改革不同点就是,我们要着重”研究“。之后我们会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

扫码关注

计算机视觉研究院

公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式


 往期推荐 

🔗

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存